package eleventh.System类;
//主要使用java.util保重的Date、Calendar、以及java.text包中SimpleDateFormat

import java.util.Date;

/**
 * Date类：
 * 直接用这个类的构造方法输出就可以得到一个完整的日期
 * 构造方法定义：public Date()
 *
 * 在Date类中，还有两个 long与Date间的转换操作方法
 * ①构造方法：public Date(long date)
 * ②将Date变为long：public long getTime()
 * 可以发现构造方法可以接收一个long类型的数据，而且getTime()也可以返回一个long类型的数据，利用这两个就可以实现Date与long之间的转换。
 */
public class 日期操作类 {
    public static void main(String[] args) {
        //得到当前系统日期
        Date date = new Date();
        System.out.println("当前日期为："+date);
        /**
         * 对于此日期，会发现格式不会符合日常看到的格式，而且时间也不能精确到毫秒
         * 要想按照用户自己的格式显示随时间，要用Canlendar类完成操作或者利用SimpleDateFormat类进行格式化显示
         * 提示：
         * 虽然使用Date显示的日期格式不符合用户的要求，但是从实际角度来看，Date类的使用频率也是很高的。
         * 因为只要使用格式化的方式就可以直接将一个日期格式按照用户所需要的方式进行显示。
         */

        //Date与long的转换
        long now  =System.currentTimeMillis();
        Date d = new Date(now);
        System.out.println("long转换为Date之后输出："+d);//输出对象信息
        System.out.println("Date转换为long之后输出："+d.getTime());//输出对象信息

    }
}
/*
D:\WorkSpaces\Java\jdk-21\bin\java.exe "-javaagent:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\lib\idea_rt.jar=55597:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\WorkSpaces\JavaDevelopBase_start_329\out\production\JavaDevelopBase_start_329 eleventh.System类.日期操作类
当前日期为：Fri Apr 12 14:48:05 CST 2024
long转换为Date之后输出：Fri Apr 12 14:48:05 CST 2024
Date转换为long之后输出：1712904485794

Process finished with exit code 0

 */